    
    

'Función para dibujar un carácter de forma progresiva ascenciendo o descenciendo    
Sub PrintCharFall(x As UBYTE, y As UBYTE, inc As BYTE)
    Dim i,j As BYTE
    For j=1 To 8     
        For i=0 To 7
            MemCopy(@spaceFnt(16+DatosJ(jugador,CRYSTALS),i+j*inc),20480+(32*x)+y+256*i,1)     
            If inc=1 Then
                snd(j*7+i)
            Else
                snd(60-j*7+i)
            End If    
            PAUSE 1
        Next  i
    Next j
    DatosJ(jugador,CRYSTALS)=DatosJ(jugador,CRYSTALS)+inc     
END Sub

'Muestra un ítem concreto en el panel de inventario    
Sub muestraItem(item As UBYTE, posic As UBYTE)
    Dim pos As UBYTE
    pos=8+posic*2+jugador*10
    DatosJ(jugador,OB1+posic)=40+item     
    PutChars(pos,bP+1,2,2,@tiles(40+item,0))
    PaintData(pos,bP+1,2,2,@tiles_attr(40+item,0)) 
END Sub

'Sube el marcador de vida o de O2 a un jugador concreto    
Sub SubeMarc(jug As UBYTE, v As UBYTE, tipo As UBYTE )
    Dim fi,co,i As UBYTE
    FLASH 0     
    fi=26-tipo*24: co=maxMarc+16      

    If v>maxMarc Then
        v=maxMarc
    End If
        
    For i=0 To v-1       
        If i<8 Then 
            ink colMarc(tipo,0)
        Elseif i<32   
            ink colMarc(tipo,1)
        Else 
            ink colMarc(tipo,2)
        End If        
        PLOT co+i+80*jug,fi:PLOT co+i+80*jug,fi+1:PLOT co+i+80*jug,fi+2:PLOT co+i+80*jug,fi+3
        Next
        ink 7
        DatosJ(jug,O2+tipo)=v 
END Sub

'Baja el marcador de vida o de O2 a un jugador concreto    
Sub BajaMarc(danyo As UBYTE, tipo As UBYTE)
    Dim fi,co,j,posic As UBYTE

    If DatosJ(jugador,O2+tipo)>danyo Then     
        DatosJ(jugador,O2+tipo)=DatosJ(jugador,O2+tipo)-danyo
        If tipo=0 AND  DatosJ(jugador,O2+tipo)<32 Then
            snd128(7)     
        End If
    Else
        danyo=DatosJ(jugador,O2+tipo)     
        DatosJ(jugador,O2+tipo)=0
        jugador=0     
            
        FLASH 0
        vivo=0        
    End If

    fi=26-tipo*24: co=16+maxMarc+DatosJ(jugador,O2+tipo)
    OVER 1     
    If danyo-1 > 200 Then     
        danyo=1
    End If
    For j=0 To danyo-1
        If DatosJ(jugador,O2+tipo)>32 Then  
            ink colMarc(tipo,2)
        Elseif DatosJ(jugador,O2+tipo)>8   
            ink colMarc(tipo,1)
        Else 
            ink colMarc(tipo,0)
        End If 
        FLASH 0     
        PLOT co+j+80*jugador,fi:PLOT co+j+80*jugador,fi+1:PLOT co+j+80*jugador,fi+2: PLOT co+j+80*jugador,fi+3
        Next
        OVER 0     
            
        posic=(tipo+1) mod 2
        If DatosJ(jugador,O2+tipo)<=8 Then 
            FLASH 1     
            snd128(2) 
                
        Else
            FLASH 0     
        End If
        INK 2+posic*3: BRIGHT 1
        PLOT 2+(jugador*17+7)*8,(0+posic*2)*8     
        BRIGHT 0
        PLOT 1+(jugador*17+7)*8,(1+posic*2)*8     
END Sub

    
    
    
    
    